Azure VM のお作法として、IP アドレスは DHCP 取得が必須 & OS 内で NIC の設定変更は原則 NG というのがありますが、DHCP の挙動ってあんまり情報ないので調べてみました。
というのも、route print したときに見慣れない経路があるんですよね。
168.63.129.16 は言わずと知れた Azure 基盤の仮想 IP、169.254.169.254 は Instance Metadata / Scheduled Events なんですが、個別に経路が入ってるのって不思議ですよね。
- IP アドレス 168.63.129.16 について
https://blogs.technet.microsoft.com/jpaztech/2016/04/01/about-168-63-129-16/ - 自分の VM に何が起きるか把握する Scheduled Events (Instance Metadata Service) のご紹介
https://blogs.technet.microsoft.com/jpaztech/2017/10/04/instance-metadata-service/
あと、前々から ipconfig /renew できない件も疑問だったので、とりあえずパケットを取ってみることに。
168.63.129.16 に対して DHCP Request をユニキャストで出してます。
応答ないので再送してますね。
その一方で、ipconfig /release してから ipconfig /renew すると挙動が違います。
# 複数行まとめてコマンドを流さないとネットワークが切れて死ぬので気を付けましょう。
こちらもパケットを取ってみると、一回 release してるので、255.255.255.255 にブロードキャストしてますね。
ちゃんと応答も帰ってきてますが、中身を細かく見てみると RelayAgentIP に 168.63.129.16 が。
そして、ClasslessStaticRoute に168.63.129.16 と 169.254.169.254 入ってます。こいつが正体か。
ということで、パケットを見たら謎が解けてスッキリしました。
せっかくなので Windows Server の DHCP のオプションも見てみたところ、ちゃんとあるんですね。知らんかった。
ということで、分からないことはパケットを見るのが一番だなぁと思ったのでした。